box: Use widget child list in compute_size_for_orientation
authorTimm Bäder <mail@baedert.org>
Tue, 6 Feb 2018 21:11:01 +0000 (22:11 +0100)
committerTimm Bäder <mail@baedert.org>
Fri, 9 Feb 2018 10:36:53 +0000 (11:36 +0100)
And remove the non-NULL checks for minimum_size and natural_size since
these are non-NULL by definition since this function is only called from
measure().

gtk/gtkbox.c

index 3567ecbe5f8e0b933f4f0f88eda350b6a315bf0b..fac5464e537337b50256a6b6e9cf5cbe3d92541a 100644 (file)
@@ -1231,21 +1231,20 @@ gtk_box_compute_size_for_orientation (GtkBox *box,
                                      gint   *natural_size)
 {
   GtkBoxPrivate *private = gtk_box_get_instance_private (box);
-  GList         *children;
+  GtkWidget *child;
   gint           nvis_children = 0;
   gint           required_size = 0, required_natural = 0, child_size, child_natural;
   gint           largest_child = 0, largest_natural = 0;
   gint           spacing = get_spacing (box);
 
-  for (children = private->children; children != NULL;
-       children = children->next)
+  for (child = gtk_widget_get_first_child (GTK_WIDGET (box));
+       child != NULL;
+       child = gtk_widget_get_next_sibling (child))
     {
-      GtkBoxChild *child = children->data;
-
-      if (_gtk_widget_get_visible (child->widget))
+      if (_gtk_widget_get_visible (child))
         {
 
-          gtk_widget_measure (child->widget,
+          gtk_widget_measure (child,
                               private->orientation,
                               avail_size,
                               &child_size, &child_natural,
@@ -1276,11 +1275,8 @@ gtk_box_compute_size_for_orientation (GtkBox *box,
       required_natural  += (nvis_children - 1) * spacing;
     }
 
-  if (minimum_size)
-    *minimum_size = required_size;
-
-  if (natural_size)
-    *natural_size = required_natural;
+  *minimum_size = required_size;
+  *natural_size = required_natural;
 }